Using I/o Automata for Developing Distributed Systems Using I/o Automata for Developing Distributed Systems 279 Sion of I/o Automata. Other Tool Support for I/o Automata Includes the Spectrum Programming Language and Simulator Gol90]. 13.2 General Design Guidelines
نویسندگان
چکیده
This paper describes a new experimental programming language, IOA, for modeling and implementing distributed systems, plus designs for a set of tools to support IOA programming. The language and tools are based on the I/O automaton model for reactive systems, which has been used extensively for research on distributed algorithms. The language supports structured modeling of distributed systems using shared-action composition and levels of abstraction. The tools are intended to support system design, several kinds of analysis, and generation of eecient runnable code. 13.1 Introduction Distributed systems are required to provide increasingly powerful services, with increasingly strong guarantees of performance, fault-tolerance, and security. At the same time, the networks in which these systems run are growing larger and becoming less predictable. It is no wonder that distributed systems have become very complex. The best approach to managing the increased complexity involves organizing systems in structured ways, viewing them at diierent levels of abstraction and as parallel compositions of interacting components. Such structure makes systems easier to understand, build, maintain, and extend, and can serve as the basis for documentation and analysis. However, in order to be most useful, this structure must rest on a solid mathematical foundation. This is obviously necessary if the structure is to support formal methods of constructing or analyzing systems; however , even without formal methods, a mathematical basis is essential for precise understanding. 277 278 Garland & Lynch One reasonable mathematical basis is the I/O automaton model LT87], which has been used to describe and verify distributed algorithms and to express impossibility results (see, e.g., Lyn96]). Several aspects of this model make it good for such tasks. It is based on set-theoretic mathematics rather than on a particular logic or programming language. I/O automata are nondeterministic, which allows systems to be described in their most general forms. I/O automata have a simple notion of external behavior based on sets of traces of external actions. Moreover, I/O automata can be composed by identifying external actions, in a way that respects external behavior, and pairs of automata can be related using various forms of implementation relations that preserve external behavior. The model supports a rich set of proof methods, including invariant assertion techniques for proving that a property is true in all reachable states, forward and backward simulation methods for proving that one automaton implements another, and compositional methods for reasoning about collections of interacting components. Also, …
منابع مشابه
Exploring and Exploiting Quantum-Dot Cellular Automata
The Full Adders (FAs) constitute the essential elements of digital systems, in a sense that they affect the circuit parameters of such systems. With respect to the MOSFET restrictions, its replacement by new devices and technologies is inevitable. QCA is one of the accomplishments in nanotechnology nominated as the candidate for MOSFET replacement. In this article 4 new layouts are presente...
متن کاملSimulating I/o Automata. Trace Properties
I/O automaton is a mathematical model used for synchronous distributed algorithms. I/O automaton is a state machine with very little structure, and with labeled transitions. IOA language was developed for this automata. This article presents the building of a simulator for I/O automata described in a dialect of this language. The use of the simulator is to generate traces of the automata, so th...
متن کاملI-homomorphism for BL-I-General L-fuzzy Automata
Taking into account the notion of BL-general fuzzy automaton, in the present study we define the notation of BL-intuitionistic general L-fuzzy automaton and I-bisimulation for BL-intuitionistic general L-fuzzy automaton.Then for a given BL-intuitionistic general L-fuzzy automaton, we obtain the greatest I-bisimulation. According to this notion, we give the structure of quotient BL-intuiti...
متن کاملSeparating Structure from Function in
A distributed system is viewed as a collection of functional components and a unifying structure that deenes relationships among the components. In this paper, we advocate a particular approach to distributed system speciication and design in which the structure of a distributed system is speciied separately from the functional components. This permits one to reason about individual functional ...
متن کاملInput/Output Automata: Basic, Timed, Hybrid, Probabilistic, Dynamic,
The term Input/Output Automata refers to a family of system modeling frameworks based on interacting infinite-state machines. The models come in several flavors, based on which features (fairness, time, continuous behavior, probability, etc.) they can express. In each of these frameworks, automata can be composed in parallel to form more complex automata, and automata can be related using level...
متن کامل